﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using ElGee.Google.Charts;

namespace WebApp
{
    public static class ColumnChartData
    {
        /// <summary>
        /// Gets the data source for a ColumnChart.
        /// </summary>
        /// <returns></returns>
        public static ChartDataSource GetDataSource()
        {
            var ds = new ChartDataSource();

            // Horizontal Axis
            ChartDataTable dt = new ChartDataTable(TypeOfAxis.Horizontal, TypeOfColumn.String, "Years");
            dt.Data.Add("2008");
            dt.Data.Add("2009");
            dt.Data.Add("2010");
            ds.Tables.Add(dt);

            // Vertical Axis, we have 3 series
            dt = new ChartDataTable(TypeOfAxis.Vertical, TypeOfColumn.Number, "Europe");
            dt.Data.Add("214.34");
            dt.Data.Add("219.01");
            dt.Data.Add("510.10");
            ds.Tables.Add(dt);

            dt = new ChartDataTable(TypeOfAxis.Vertical, TypeOfColumn.Number, "America");
            dt.Data.Add("234.34");
            dt.Data.Add("289.01");
            dt.Data.Add("470.10");
            ds.Tables.Add(dt);

            dt = new ChartDataTable(TypeOfAxis.Vertical, TypeOfColumn.Number, "Asia");
            dt.Data.Add("147.34");
            dt.Data.Add("126.01");
            dt.Data.Add("204.10");
            ds.Tables.Add(dt);

            return ds;
        }

        public static ColumnChart GetOptions()
        {
            var chart = new ColumnChart();
            chart.Style.Title = "Sales Comparaison";
            chart.Style.TitlePosition = TypeOfPosition.In;
            chart.Style.Height = 400;
            chart.Style.Width = 500;
            chart.Style.Colors.Add("#333333");
            chart.Style.Colors.Add("#33DD00");
            chart.Style.Colors.Add("#DD99AF");
            chart.Style.LineWidth = 2;
            return chart;
        }
    }
}